With the development of optical storage technology, programs stored on optical discs could have been played without following the fixed order. It almost becomes one necessary function in an optical disc playing apparatus that a user is enabled to perform interactive operation, while the network linking function has gradually become an important part of the newly rising functions of various optical disc formats. For example, an Enhanced Digital Versatile Disc (DVD) optical disc format defines a good interactive operation function and network linking function.
All these functions are usually realized in a manner of menu navigation. An optical disc playing apparatus responds to some commanded triggering events (e.g. the pressing of buttons) according to the menu to realize corresponding functions. All the interactive operation functions and network linking functions are determined during editing the optical disc.
As an optical disc format of new generation, A Blue-ray Disc is, in addition to its well-known incomparably large storage, characterized by providing rich and flexible personalized interactive functions and network linking functions. A Java application, as a completely object-oriented application, is introduced into the Blue-ray Disc format and it can run on various platforms, so a Java application is quite suitable to act as a tool enabling more personalized interactive functions and network linking functions available to the user. It becomes an issue worthy of note how to enable a Java application to run with respect to an optical disc program according to determined time and effect.
Traditional methods of managing the correspondence between Java applications and programs being played are frequently adopted on a Multimedia Home Platform (MHP). In MHP, programs and Java applications are transmitted in real time to the user via code stream. The editors at the server terminal transmit an Application Information Table (AIT) and Java applications according to predetermined time to make the applications cooperate with the playing of the programs, so there is no need for association information between the programs and applications. An AIT contains the information describing a Java application, such as storage information, type information, information of resource required for running, running start information, running end information, etc. The user terminal unscrambles the received AIT and controls the running of corresponding Java application based on the relevant information therein, what is presented to the user is an integrated effect brought about by the programs being played and corresponding applications.
As far as a Blue-ray Disc is concerned, however, the programs and corresponding Java applications are stored on an optical disc or in network, and are read or downloaded upon request by an optical disc playing apparatus, which is different from the situation in MHP that the programs and Java applications are transmitted in real time by the server terminal and are received and used in real time by the user terminal. Therefore, unlike in MHP, a Java application in Blue-ray Disc format is impossible to run through the user terminal receiving AIT and unscrambling AIT in real time so as to realize corresponding functions. Furthermore, in a Blue-ray Disc format, an optical disc program may possibly need the support of several applications, whereas a Java application may serve the playing of a plurality of optical disc programs, so the issue of applications corresponding to the playing of optical disc programs becomes more complex.
An optical disc playing apparatus cannot download all the Java applications that may possibly be used into the memory when it starts playing the optical disc, nor is it allowable to find Java applications that shall run during playing an optical disc program, thereby affecting the playing effect.
Therefore, there exists a need to provide a method and apparatus for enabling an application to cooperate with the running of a program so as to solve the problem of cooperation between the running of the application and the playing of the program.